package com.jianggy.proxy.jdk;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;

import com.jianggy.proxy.UserDao;

/**
 * @author jianggy
 * @time 2018年9月24日 下午9:52:42
 * @description
 */
public class UserDaoHandler implements InvocationHandler {
	// 需要有一个对真实对象的引用
	private UserDao userDao = null;

	public UserDaoHandler(UserDao userDao) {
		this.userDao = userDao;
	}

	@Override
	public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
		System.out.println("开始事务。。。。");
		Object object = method.invoke(userDao, args);
		System.out.println("提交事务。。。。");
		return object;
	}

}
